package datamodule;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import conexao.Connect;



public class PreferenciasDAO {
	
	private DBuserVO userVO ;
	
	public PreferenciasDAO(DBuserVO userVO){
		this.userVO = userVO;
	}
	
	public PreferenciasVO pesquisar(String usu_codusu) throws ClassNotFoundException, SQLException {
		PreferenciasVO vo = null;
			Connection con = conexao.Connect.getConnection(userVO);
			StringBuffer sql = new StringBuffer(
					"SELECT * "
					+ " FROM preferencias ");
			sql.append(" WHERE usu_codusu = '"+usu_codusu+"' ");
			
		
			Statement stmt = con.createStatement();	
			ResultSet rs = stmt.executeQuery(sql.toString());
			if (rs.next()) {
				vo = new PreferenciasVO();
				vo.setUsu_codusu(rs.getString("usu_codusu"));
				vo.setPre_bgcolor(rs.getString("pre_bgcolor"));
				vo.setPre_cor(rs.getString("pre_cor"));
				vo.setPre_fontecor(rs.getString("pre_fontecor"));
				vo.setPre_fundo(rs.getString("pre_fundo"));
				vo.setPre_nomecor(rs.getString("pre_nomecor"));
				vo.setPre_tema(rs.getString("pre_tema"));
				vo.setPre_temaarq(rs.getString("pre_temaarq"));
				vo.setPre_temanome(rs.getString("pre_temanome"));
				vo.setPre_transpar(rs.getString("pre_transpar"));
				vo.setPre_wallpaper(rs.getString("pre_wallpaper"));
				vo.setPre_wallparq(rs.getString("pre_wallparq"));
				vo.setPre_wallpnome(rs.getString("pre_wallpnome"));
				vo.setPre_wallppos(rs.getString("pre_wallppos"));
				vo.setSql_rowid(rs.getInt("sql_rowid"));
				
			
			}
			stmt.close();
			rs.close();
			con.close();
			return vo;
	}

	
	
	public int alterar(String usu_codusu
					, String pre_bgcolor
					, String pre_fontecor 
					, String pre_transpar 
					, String pre_tema
					, String pre_temanome 
					, String pre_temaarq 
					, String pre_cor
					, String pre_nomecor 
					, String pre_fundo 
					, String pre_wallpaper 
					, String pre_wallpnome 
					, String pre_wallparq 
					, String pre_wallppos) throws ClassNotFoundException, SQLException {
		
		   int regs = 0;
		   Connection con = conexao.Connect.getConnection(userVO);
			StringBuffer sql = new StringBuffer(
					"UPDATE preferencias  "
					+ " SET usu_codusu = usu_codusu  ");
			if(pre_bgcolor!=null && pre_bgcolor.length()>0){
					sql.append(" ,  pre_bgcolor = '"+pre_bgcolor+"' ");
			}
			if(pre_fontecor!=null && pre_fontecor.length()>0){
				sql.append(" ,  pre_fontecor = '"+pre_fontecor+"' ");
			}
			if(pre_transpar!=null && pre_transpar.length()>0){
				sql.append(" ,  pre_transpar = '"+pre_transpar+"' ");
			}
			if(pre_tema!=null && pre_tema.length()>0){
				sql.append(" ,  pre_tema = '"+pre_tema+"' ");
			}
			if(pre_temanome!=null && pre_temanome.length()>0){
				sql.append(" ,  pre_temanome = '"+pre_temanome+"' ");
			}
			if(pre_temaarq!=null && pre_temaarq.length()>0){
				sql.append(" ,  pre_temaarq = '"+pre_temaarq+"' ");
			}
			if(pre_cor!=null && pre_cor.length()>0){
				sql.append(" ,  pre_cor = '"+pre_cor+"' ");
			}
			if(pre_nomecor!=null && pre_nomecor.length()>0){
				sql.append(" ,  pre_nomecor = '"+pre_nomecor+"' ");
			}
			if(pre_fundo!=null && pre_fundo.length()>0){
				sql.append(" ,  pre_fundo = '"+pre_fundo+"' ");
			}
			if(pre_wallpaper!=null && pre_wallpaper.length()>0){
				sql.append(" ,  pre_wallpaper = '"+pre_wallpaper+"' ");
			}
			if(pre_wallpnome!=null && pre_wallpnome.length()>0){
				sql.append(" ,  pre_wallpnome = '"+pre_wallpnome+"' ");
			}
			if(pre_wallparq!=null && pre_wallparq.length()>0){
				sql.append(" ,  pre_wallparq = '"+pre_wallparq+"' ");
			}
			if(pre_wallppos!=null && pre_wallppos.length()>0){
				sql.append(" ,  pre_wallppos = '"+pre_wallppos+"' ");
			}
			sql.append(" WHERE usu_codusu = ? ");
			
		
			PreparedStatement pstmt = con.prepareStatement(sql.toString());
			
			pstmt.setString(1, usu_codusu);
			
			regs = pstmt.executeUpdate();
		
			pstmt.close();
			con.close();
			
			return regs;
	}
	

	
	public int inserir(String usu_codusu
				, String pre_bgcolor
				, String pre_fontecor 
				, String pre_transpar 
				, String pre_tema
				, String pre_temanome 
				, String pre_temaarq 
				, String pre_cor
				, String pre_nomecor 
				, String pre_fundo 
				, String pre_wallpaper 
				, String pre_wallpnome 
				, String pre_wallparq 
				, String pre_wallppos) throws ClassNotFoundException, SQLException {
		
		Connection con = Connect.getConnection(userVO);
		
		PreparedStatement pstmtInsert = con.prepareStatement(
							"INSERT INTO preferencias ("
							+ " usu_codusu "
							+ " ,  pre_bgcolor "
							+ " ,  pre_fontecor  "
							+ " ,  pre_transpar  "
							+ " ,  pre_tema "
							+ " ,  pre_temanome " 
							+ " ,  pre_temaarq  "
							+ " ,  pre_cor "
							+ " ,  pre_nomecor " 
							+ " ,  pre_fundo  "
							+ " ,  pre_wallpaper " 
							+ " ,  pre_wallpnome  "
							+ " ,  pre_wallparq  "
							+ " ,  pre_wallppos)" +
									" VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?) ");
			
					pstmtInsert.setString(1, usu_codusu);
					pstmtInsert.setString(2, pre_bgcolor);
					pstmtInsert.setString(3, pre_fontecor);
					pstmtInsert.setString(4, pre_transpar);
					pstmtInsert.setString(5, pre_tema);
					pstmtInsert.setString(6, pre_temanome);
					pstmtInsert.setString(7, pre_temaarq);
					pstmtInsert.setString(8, pre_cor);
					pstmtInsert.setString(9, pre_nomecor);
					pstmtInsert.setString(10, pre_fundo);
					pstmtInsert.setString(11, pre_wallpaper);
					pstmtInsert.setString(12, pre_wallpnome);
					pstmtInsert.setString(13, pre_wallparq);
					pstmtInsert.setString(14, pre_wallppos);
			
			pstmtInsert.executeUpdate();		 

			con.close();
			
			return 1;				
		
	}
	

	
}
